package com.hxzy.service;

import com.hxzy.common.exception.ServiceStringException;

import java.util.Random;

/**
 * 短信服务接口
 */
public interface SmsService {

    /**
     * 生成验证码
     * @param len 长度
     * @return 随机验证码
     */
    default String generateCode(int len) {
        if(len<4){
            throw new ServiceStringException("验证码长度必须大于4位");
        }
        Random rd=new Random();
        StringBuilder str=new StringBuilder();
        for(int i=0;i<len;i++){
            str.append( rd.nextInt(10));
        }
        return str.toString();
    } ;


    /**
     * 短信验证码
     * {1}为您的登录验证码，请于{2}分钟内填写，如非本人操作，请忽略本短信。
     * @param phone
     * @param templateParamSet
     * @return
     */
    boolean sendCodeSms(String phone,String[] templateParamSet);

    /**
     * 商家注册审核不通过短信
     * @param phone
     * @param reason
     * @return
     */
    boolean approvalNoPass(String phone,String reason);

    /**
     * 商家注册审核通过*
     * @param phone
     * @return
     */
    boolean approvalPass(String phone);

    /**
     *  忘记密码(找回密码)验证码*
     * @param phone
     * @param templateParamSet
     * @return
     */
    boolean forgetPasswordSms(String phone, String[] templateParamSet);
}
